The present invention relates to a power management technique for a cluster and more particularly, the present invention relates to a technique for allowing a cluster administrator to power manage fabric-attached hosts and I/O (input/output) controllers, regardless of which host currently owns the controller.
In a cluster arrangement, a plurality of servers or hosts are connected via a cluster interconnection fabric to a plurality of I/O (input/output) controllers.
A cluster administrator is connected to all of the servers and I/O controllers via the cluster interconnection fabric.
Normally, each host or server has its own OS (operating system) Power Manager which is used to control the power management of that particular host and its I/O controllers.
In addition, the cluster administrator includes a Cluster Power Manager to control the power management of all of the hosts and I/O units.
Since the OS Power Managers operate independently, and since the Cluster Power Manager of the cluster administrator operates independently, a situation may arise where there is a conflict between two or more power managers with regard to power management of a host or I/O controller.
For example, the OS Power Manager on one host or server may place its I/O controller or server in a xe2x80x9csleepxe2x80x9d or xe2x80x9chibernatexe2x80x9d state in the absence of any input or output for a predetermined period of time. This may create a problem when the cluster requires that I/O controller to remain in its xe2x80x9cfully onxe2x80x9d state to act instantaneously under a predetermined set of conditions.
Conversely, the Cluster Power Manager of the cluster administrator may signal a server or host to go into its xe2x80x9cpower downxe2x80x9d state in a situation where that server should remain in its xe2x80x9cfully onxe2x80x9d state because of a particular set of circumstances.
For the reasons noted above, it is necessary to coordinate the operation of the Cluster Power Manager of the cluster administrator with the OS Power Managers of all of the hosts or servers connected together by the cluster interconnection fabric.
A power management technique for a cluster having a group of hosts connected to a group of I/O (input/output) units via a cluster interconnection fabric includes: transmitting an OS (operating system) independent power management request from a Cluster Power Manager to an OS Power Manager within one of the hosts via a Control Element in the host and the fabric. A reply to the request from the Control Element is transmitted to the Cluster Power Manager via the fabric. A command to the Control Element is transmitted from the Cluster Power Manager via the fabric. The command from the Control Element is transmitted to the OS Power Manager and an I/O Controller Device Driver Stack in the host. A command completion acknowledgment is transmitted from the Control Element to the Cluster Power Manager via the fabric.